package cn.edu.scnu.semart.order.feign;

import cn.edu.scnu.semart.model.user.Address;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@FeignClient(name = "service-user", path = "/address")
public interface UserFeignClient {
    // 2. 根据用户 ID 和地址 ID 获取地址（GET + 路径变量）
    @GetMapping("/{userId}/address/{addressId}")
    Address getAddressById(@PathVariable("userId") Integer userId,
                           @PathVariable("addressId") Integer addressId);

    // 3. 根据地址 ID 列表批量查询地址（GET + 查询参数）
    @GetMapping("/address/listByIds")
    List<Address> getAddressesByIds(@RequestParam("addressIds") List<Integer> addressIds);

    /**
     * 查询所有地址（内部服务调用）
     */
    @GetMapping("/internal/all")
    List<Address> getAllAddresses();

}
